package array;

import org.testng.Assert;
import org.testng.annotations.Test;

import java.util.Arrays;


/**
 * 数组遍历修改
 * 二维数组的length长度
 *
 *
 *
 */
public class Array1 {



    @Test(description = "数组可以在遍历的时候修改，原因是直接取到了地址")
    public void modifyInVerse() {
        String[] s = {"1", "2", "b", "d"};
        for (String string : s) {
            if (string.equals("2")) {
                // 这种方式无法修改
                string = "20";
            }
        }

        // 这种方式可以修改
        for (int i = 0; i < s.length; i++) {
            if (s[i].equals("b")) {
                s[i] = "20b";
            }
        }

        System.out.println(Arrays.toString(s));
    }

    @Test
    public void breakLoop() {
        for (int i = 0; i < 10; i++) {
            System.out.println(i);
            if (i > 7) {
                break;
            }
        }
    }

    /**
     * 二维数组的length长度
     *
     */
    @Test
    public void length() {
        int[][] a = {{1, 2, 3}, {4, 5, 6}};
        Assert.assertEquals(a.length, 2);
        Assert.assertEquals(a[0].length, 3);
    }
}
